package com.work.cos.service.interfc;

import java.util.List;

import com.work.cos.domain.entity.SystemConfigEntity;
import com.work.cos.util.page.PageInfo;

public interface ISystemConfigService {
	
	/**
     * 根据关键字查询系统配置信息
     */
	String getSystemConfigByConfigKey(String configKey);
	

    List<SystemConfigEntity> findAllSystemConfigList();
	
	/**
     * 根据关键字查询系统配置信息
     */
    PageInfo<SystemConfigEntity> findSystemConfigByConfigKey(String configKey);
	/**
	 * 查找
	 * @param configKey
	 * @param name
	 * @param pageNo
	 * @param pageSize
	 * @return
	 */
    PageInfo<SystemConfigEntity> findSystemConfigByNameAndConfigKey(SystemConfigEntity systemConfigInfo);
	/**
	 * 新增
	 * @param systemConfig
	 * @return
	 */
	boolean addSystemConfig(SystemConfigEntity systemConfig);
	/**
	 * 根据ID获得配置信息
	 * @param id
	 * @return
	 */
	SystemConfigEntity getSystemConfigById(Long id);
	/**
	 * 修改
	 * @param id
	 * @param name
	 * @param configKey
	 * @param configValue
	 * @param depiction
	 * @return
	 */
	boolean updateAllSystemConfig(SystemConfigEntity systemConfig);
	/**
	 * 删除
	 * @param id
	 * @return
	 */
	boolean deleteSystemConfig(Long id);
	
	SystemConfigEntity getSystemConfigInfoByConfigKey(String configKey);
	
	String getConfigValueByConfigKey(String configKey);
	
	/**
     * 修改
     */
	boolean updateSystemConfig(String configKey, String configValue);
	/**
     * 加载缓存
     */
//	boolean loadSystemConfig();
	
	/**
	 * 多品类配送费
	 * @return
	 */
	double getMultiDispatchPrice();
	
	/**
	 * 多品类起送价
	 * @return
	 */
	double getMultiBasePrice();
	/**
	 * 引导页面接口
	 * @param areaCode
	 * @return
	 */
	List<SystemConfigEntity> getSystemConfigList(SystemConfigEntity systemConfigInfo);
	
	/**
	 * 物流访问地址
	 * @return
	 */
	String getLogisticUrl();
	
	
	List<SystemConfigEntity> findSystemToDownList(SystemConfigEntity config);
	
}
